package com.cskaoyan.javase.oop1._9block._1local;

/**
 * @description: 局部代码块
 * @author: wuguidong@cskaoyan.onaliyun.com
 **/

/**
 * 局部代码块: 定义在局部位置的代码块就是局部代码块,典型的就是定义在方法体内部的代码块
 * 语法: {}
 * 作用:
 * 1. 局部代码块可以用来限制局部变量的生命周期，当代码从上到下执行完该作用域后，会立即释放该局部变量
 *    - 及早释放资源，提升效率，提升内存利用率
 * 2. 局部代码块可以用来限制局部变量的作用域，可以在一个方法中定义同名局部变量，如下代码完全合法
 *
 * 局部代码块会显著增加代码层级,让代码更加难以读懂,比起增加的一丢丢性能,"得不偿失"
 * 不要在开发中使用局部代码块
 *
 */
public class Demo {
    public static void main(String[] args) {
        //局部代码块
        {
            int a = 10;
            {
                int b = 20;
                {
                    int c = 30;
                }
            }

        }
        int a = 10;
    }
}
